package models; import java.util.ArrayList; public interface DictionaryInterface { /** * Method for adding a new synonym * * @invariant isWellFormed() * @pre word != null && synonym!=null * @post getNumberOfSynonims(word)!=0 && getNumberOfSynonims(word) == getNumberOfSynonims(word)@pre + 1 * @post get(word).contains(synonim) * @invariant isWellFormed() * @param word * @param synonym * */ public void addSynonim(String word, String synonym); /** * Method for deleting a new synonim * * @invariant isWellFormed() * @pre word != null && synonym!=null * @pre dictionary.get(word).contains(synonim) * @post getNumberOfSynonims(word) == getNumberOfSynonims(word)@pre - 1 * @post !(dictionary.get(word).contains(synonim)) * @invariant isWellFormed() * @param word * @param synonym * */ public void deleteSynonim(String word, String synonim); /** * Method for adding a new word * * @invariant isWellFormed() * @pre word != null && ss!=null * @post getNumberOfWords() == getNumberOfWords()@pre + 1 * @post getNumberOfSynonims(word)==ss.size() * @invariant isWellFormed() * @param word * @param ss */ public void addWordAndSynonim(String word, ArrayList<String> ss); /** * Method for deleting a word * * @invariant isWellFormed() * @pre word!=null * @pre dictionary.containsKey(word) * @post getNumberOfWords() == getNumberOfWords()@pre - 1 * @post !(dictionary.containsKey(word)) * @invariant isWellFormed() * @param word */ public void deleteWord(String word); public ArrayList<String> search(String s); }